14 research outputs found

    A Derivation Strategy for Formal Specifications from Natural Language Requirements Models

    Get PDF
    Formal methods have come into use for the construction of real systems, as they help increase software quality and reliability. However, they are usually accessible only to specialists, thus discouraging stakeholders' participation, crucial in first steps of software development. To address this problem, we present in this paper a strategy to derive an initial formal specification, written in the RAISE Specification Language, from requirements models based on natural language, such as the Language Extended Lexicon, the Scenario Model, and the Business Rules Model, which are closer to the stakeholders' language. We provide a set of heuristics which show how to derive types and functions, and how to structure them in a layered architecture, thus contributing to fruitfully use the large amount of information usually available after requirements modelling stage. In addition, we illustrate the strategy with a concrete case study

    Uso de modelos de negocios y de requisitos en desarrollos basados en MDA

    Get PDF
    Existe un interés creciente en el estudio de la integración entre requisitos y arquitecturas, a partir del cual se han identificado los aspectos problemáticos de esta integración así como también algunas soluciones. Entre estos aspectos problemáticos, destacamos la necesidad de reducir la brecha inevitable entre una especificación de requisitos, generalmente informal, y una especificación formal de arquitectura de software; la necesidad de mantener la consistencia y traceability entre modelos de requisitos y modelos de arquitecturas; y por último, la necesidad de lograr el desarrollo de una arquitectura sobre la base de requisitos no siempre completos que incluso pueden cambiar o definirse a partir de la arquitectura. Este interés por relacionar los diferentes modelos ha tenido una fuerte influencia en la comunidad de software, surgiendo recientemente el Model-Driven Architecture (MDA). Dentro de un desarrollo MDA, el proceso es dirigido por la actividad de modelar el sistema de software en sus diferentes fases a través de lenguajes de transformación que permiten obtener en cada etapa un modelo del anterior. La línea de investigación aquí presentada se enmarca en este contexto, ya que pretende definir una estrategia que permita reducir la brecha entre los modelos de requisitos y los modelos tempranos de arquitecturas de software orientadas a objetos basados en UML, favoreciendo la definición de arquitecturas adaptables a los requisitos y capaces de evolucionar a partir de los cambios en la organización. Esto será posible gracias a la estrategia de transformación que proveerá un conjunto de heurísticas que facilitarán la traceability entre los modelos generados.Eje: Análisis de RequerimientosRed de Universidades con Carreras en Informática (RedUNCI

    CIMTool: una herramienta para la definición de un diagrama de clases UML

    Get PDF
    Model Driven Architecture es un framework de desarrollo de software cuyo concepto clave es la transformación automática de modelos. Uno de estos modelos, el Computer Independent Model (CIM), se usa para definir el modelo del negocio. En este trabajo se presenta CIMTool, una herramienta que implementa un proceso de definición automática del CIM. Este proceso aplica un conjunto de reglas de transformación a modelos de requisitos basados en lenguaje natural derivando un diagrama de clases UML. CIMTool puede integrarse con cualquier herramienta CASE que acepte archivos XML. Así, el CIM derivado puede ser la base para un desarrollo basado en MDAII Workshop de Ingeniería de Software y Bases de Datos (WISBD)Red de Universidades con Carreras en Informática (RedUNCI

    Herramientas educativas para la enseñanza de la lógica

    Get PDF
    El software educativo ayuda a motivar y mejorar el proceso de enseñanza/aprendizaje. En este artículo se presenta un proyecto de desarrollo de herramientas didácticas, interactivas y visuales para cursos de Lógica dictados en los primeros años de carreras de Informática. Las herramientas fueron desarrolladas por alumnos de 2º año de la carrera como Trabajo Final de dos materias, una que introduce conceptos de Lógica para Computación y otra que aborda las bases de las técnicas de diseño de algoritmos, permitiéndoles integrar y profundizar en los contenidos de ambas.V Workshop de Innovación en Educación en Informática (WIEI).Red de Universidades con Carreras en Informática (RedUNCI

    Herramientas educativas para la enseñanza de la lógica

    Get PDF
    El software educativo ayuda a motivar y mejorar el proceso de enseñanza/aprendizaje. En este artículo se presenta un proyecto de desarrollo de herramientas didácticas, interactivas y visuales para cursos de Lógica dictados en los primeros años de carreras de Informática. Las herramientas fueron desarrolladas por alumnos de 2º año de la carrera como Trabajo Final de dos materias, una que introduce conceptos de Lógica para Computación y otra que aborda las bases de las técnicas de diseño de algoritmos, permitiéndoles integrar y profundizar en los contenidos de ambas.V Workshop de Innovación en Educación en Informática (WIEI).Red de Universidades con Carreras en Informática (RedUNCI

    Herramientas educativas para la enseñanza de la lógica

    Get PDF
    El software educativo ayuda a motivar y mejorar el proceso de enseñanza/aprendizaje. En este artículo se presenta un proyecto de desarrollo de herramientas didácticas, interactivas y visuales para cursos de Lógica dictados en los primeros años de carreras de Informática. Las herramientas fueron desarrolladas por alumnos de 2º año de la carrera como Trabajo Final de dos materias, una que introduce conceptos de Lógica para Computación y otra que aborda las bases de las técnicas de diseño de algoritmos, permitiéndoles integrar y profundizar en los contenidos de ambas.V Workshop de Innovación en Educación en Informática (WIEI).Red de Universidades con Carreras en Informática (RedUNCI

    Propuestas de Innovación Ciudadana y Educativa: una Propuesta de Enseñanza de Ciencias de la Computación en la Escuela Primaria

    Get PDF
    Desde 2014 participamos en proyectos de Program.AR, iniciativa de la Fundación Dr. Manuel Sadosky que trabaja para que el aprendizaje significativo de Ciencias de la Computación(CC) esté presente en todas las escuelas argentinas. Dentro de estos proyectos destacamos, en conjunto con el ISFD y T N° 166, el primer diseño de una especialización en Didáctica de las Ciencias de la Computación de larga duración(400 hs) para maestros de escuelas primarias, dictada en la actualidad para maestros de Tandil y la zona. También destacamos el diseño de un manual con una propuesta pedagógica para la enseñanza de CC en primer ciclo de nivel primario, uno de los primeros manuales escolares en la temática en el país y que está disponible de manera libre y gratuita desde la página de Program.Ar. Cada capítulo aborda un contenido especifico con actividades desenchufadas y otras con computadora para realizar en el entorno de programación Pilas Bloques desarrollado por la Fundación Dr. Manuel Sadosky. Nuestro objetivo es continuar trabajando, de manera interdisciplinaria y junto a las instituciones educativas involucradas, en diseños de propuestas didácticas , formación de formadores, y divulgación para contribuir a que las CC lleguen a las aulas de las escuelas primarias e instituciones de nivel Desde 2014 participamos en proyectos de Program.AR, iniciativa de la Fundación Dr. Manuel Sadosky que trabaja para que el aprendizaje significativo de Ciencias de la Computación(CC) esté presente en todas las escuelas argentinas. Dentro de estos proyectos destacamos, en conjunto con el ISFD y T N° 166, el primer diseño de una especialización en Didáctica de las Ciencias de la Computación de larga duración(400 hs) para maestros de escuelas primarias, dictada en la actualidad para maestros de Tandil y la zona. También destacamos el diseño de un manual con una propuesta pedagógica para la enseñanza de CC en primer ciclo de nivel primario, uno de los primeros manuales escolares en la temática en el país y que está disponible de manera libre y gratuita desde la página de Program.Ar. Cada capítulo aborda un contenido especifico con actividades desenchufadas y otras con computadora para realizar en el entorno de programación Pilas Bloques desarrollado por la Fundación Dr. Manuel Sadosky. Nuestro objetivo es continuar trabajando, de manera interdisciplinaria y junto a las instituciones educativas involucradas, en diseños de propuestas didácticas , formación de formadores, y divulgación para contribuir a que las CC lleguen a las aulas de las escuelas primarias e instituciones de nivel inicial. inicial

    Integración de técnicas orientadas al cliente y técnicas formales en el desarrollo de software con UML y RUP

    Get PDF
    En los últimos años UML ("Unified Modeling Language") se ha impuesto como un estándar de– facto para expresar modelos orientados a objetos. Es un lenguaje diseñado para especificar, visualizar, construir y documentar “artefactos” de sistemas de software [Booch’99]. A diferencia de los lenguajes visuales que lo precedieron, UML posee una definición semántica más precisa que combina notación gráfica, reglas bien formadas expresadas en OCL [OMG’01] y lenguaje natural. Esta definición semántica da una estructura rigurosa al lenguaje aunque aún varias de sus construcciones están definidas débilmente. Si bien UML estandariza un lenguaje de modelamiento y no impone ningún proceso de desarrollo fue concebido pensando en procesos dirigidos por casos de uso, centrados en arquitecturas, iterativos e incrementales. En noviembre de 2001 OMG presenta “Software Process Engineering Metamodel” (SPEM) que es usado para describir un proceso de desarrollo de software concreto o una familia de procesos que usan UML. El proceso más popular que se ajusta a SPEM es RUP (“Rational Unified Process”) [Krutchen’00]. La existencia de un lenguaje de modelamiento estándar como UML brinda la posibilidad de concentrar esfuerzos en la definición de potentes herramientas CASE UML. Pueden mencionarse entre las numerosas existentes en el mercado a Argo/UML, Together, GDPro, Stp/UML, Rational Rose, MagicDraw/UML, Rhapsody y Objecteering. Las mismas asisten en el análisis, diseño e implementación de sistemas orientados a objetos. Proveen facilidades, si bien limitadas, para homogeneizar diagramas y realizar comprobaciones que detecten inconsistencias y errores como asimismo para procesos de ingeniería directa (forward engineering) e inversa (reverse engineering)Eje: Ingeniería de SoftwareRed de Universidades con Carreras en Informática (RedUNCI

    Integración de técnicas orientadas al cliente y técnicas formales en el desarrollo de software con UML y RUP

    Get PDF
    En los últimos años UML ("Unified Modeling Language") se ha impuesto como un estándar de– facto para expresar modelos orientados a objetos. Es un lenguaje diseñado para especificar, visualizar, construir y documentar “artefactos” de sistemas de software [Booch’99]. A diferencia de los lenguajes visuales que lo precedieron, UML posee una definición semántica más precisa que combina notación gráfica, reglas bien formadas expresadas en OCL [OMG’01] y lenguaje natural. Esta definición semántica da una estructura rigurosa al lenguaje aunque aún varias de sus construcciones están definidas débilmente. Si bien UML estandariza un lenguaje de modelamiento y no impone ningún proceso de desarrollo fue concebido pensando en procesos dirigidos por casos de uso, centrados en arquitecturas, iterativos e incrementales. En noviembre de 2001 OMG presenta “Software Process Engineering Metamodel” (SPEM) que es usado para describir un proceso de desarrollo de software concreto o una familia de procesos que usan UML. El proceso más popular que se ajusta a SPEM es RUP (“Rational Unified Process”) [Krutchen’00]. La existencia de un lenguaje de modelamiento estándar como UML brinda la posibilidad de concentrar esfuerzos en la definición de potentes herramientas CASE UML. Pueden mencionarse entre las numerosas existentes en el mercado a Argo/UML, Together, GDPro, Stp/UML, Rational Rose, MagicDraw/UML, Rhapsody y Objecteering. Las mismas asisten en el análisis, diseño e implementación de sistemas orientados a objetos. Proveen facilidades, si bien limitadas, para homogeneizar diagramas y realizar comprobaciones que detecten inconsistencias y errores como asimismo para procesos de ingeniería directa (forward engineering) e inversa (reverse engineering)Eje: Ingeniería de SoftwareRed de Universidades con Carreras en Informática (RedUNCI
    corecore